package com.qf.aop;/*
 *保护你的大熊
 *2021/11/15
 *16:18
 */

import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;

/**
 * 通知类 ，就是需要执行的额外辅助功能，
 * 例如 ：日志功能，事务功能，性能监控功能
 *
 * 在service业务方法前后，都执行这里的辅助功能
 */
public class MyAroundAdvice implements MethodInterceptor {

    @Override
    public Object invoke(MethodInvocation methodInvocation) throws Throwable {
        System.out.println("===============环绕通知：执行核心前加入事务功能================");
        Object obj = methodInvocation.proceed();//调用执行核心业务代码方法
        System.out.println("===============环绕通知：执行核心后加入事务功能================");

        return obj;
    }
}
